# -*- coding: utf-8 -*-

"""
 *
 * - Ime
 *
 *  - kratki opis
 *
 * Autori: Koki007
 * Verzija: 0.1
 * Datum: 26.02.2011
 *
"""

import pygame # za ucitavanje slike pozadine


# ovo klasa sluzi za stvaranje raznih high level stanja u igri - recimo Menu, Intro, Igra(Leveli)
# vise je placeholder kojeg neka konkretna korisnikova klasa nasljeduje
# svako stanje moze sadrzavati svoj vlastiti GUI upravitelj i elemente, mapu, kameru.. etc.
class cStanje:

    def __init__(self, upravitelj, engine, ime):
        print " - Inicijaliziranje stanja: " + ime
        self.engine = engine
        self.upravitelj_stanja = upravitelj
        self.ime = ime #ime stanja.. jel to potrebno? gdje se koristi? 
        self.varijable = {} # moze se upotrebljavati kao lista varijabala globalnih za to stanje
        self.pozadina = 0 # sluzi za crtanje pozadine, metoda ucitaj_pozadinu() postavi u nju surface objekt koji se crta
        pass
        
        
    def primi_event(self, event):
        pass
        
        
        
    def azuriraj(self):
        pass
        
        
        
    def crtaj(self):
        if self.pozadina: self.engine.glavni_buffer.blit( self.pozadina, (0, 0))
        pass
    
    # poziva se svaki puta kada se aktivira stanje
    # u slucaju da prije aktiviranja treba izvrsiti nesto, npr. prebrisati sliku iz proslog stanja i sl.
    def stanje_aktivirano(self):
        pass
        
    
    # za ucitavanje pozadine koja ce se crtati u tom stanju
    def ucitaj_pozadinu(self, ime_datoteke):
        self.pozadina = pygame.image.load(ime_datoteke).convert()
